//Promise可以解决回调地狱，转为.then的链式调用

// //引入fs模块
// import fs from 'fs'

// //封装读取文件函数
// const myReadFile = url => {
//   return new Promise((resolve, reject) => {
//     fs.readFile(url, 'utf-8', (err, dataStr) => {
//       !err ? resolve(dataStr) : reject(err)
//     })
//   })
// }
// //开始调用读取函数
// myReadFile('./text/1.txt')
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/2.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/3.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/4.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/5.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/6.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/7.txt')
//     }
//   )
//   .then(
//     //读取成功的回调
//     value => {
//       console.log(value)
//       return myReadFile('./text/8.txt')
//     }
//   )
//   .catch(err => {
//     console.log(err)
//   })
import { log } from 'console'
import fs from 'fs'
const myPromise = fpath => {
  const p = new Promise((resolve, reject) => {
    fs.readFile(fpath, 'utf8', (err, dataStr) => {
      !err ? resolve(dataStr) : reject(err)
    })
  })
  return p
}
myPromise('./text/1.txt')
  .then(
    //读取成功的回调
    value => {
      console.log(value)
      return myPromise('./text/2.txt')
    }
  ).then(
    //读取成功的回调
    value => {
      console.log(value)
      return myPromise('./text/3.txt')
    }
  ).then(
    //读取成功的回调
    value => {
      console.log(value)
      return myPromise('./text/4.txt')
    }
  ).then(
    //读取成功的回调
    value => {
      console.log(value)
      return myPromise('./text/5.txt')
    }
  ).then(
    //读取成功的回调
    value => {
      console.log(value)

    }
  ).catch(err => {
    console.log(err);
  })